//
// Created by 123 on 2025/1/7.
//
#include "vector"
#include "algorithm"
#include "iostream"
using namespace std;

void myPrint(int val){
    cout << val << endl;
}

void test1(){
    //创建vector容器,并且通过模板参数指定容器中存放的数据类型
    vector<int> v;
    v.push_back(10);
    v.push_back(20);
    v.push_back(30);
    v.push_back(5);
    //每个容器都有自己的迭代器，迭代器是用来遍历容器中的元素
    //v.begin()返回迭代器，这个迭代器指向容器中的第一个元素
    //v.end（）返回迭代器，这个迭代器指向容器中最后一个元素的下一个位置
    //vector<int>::iterator 拿到vector<int> 这种容器的迭代器类型
    vector<int>::iterator pBegin = v.begin();
    vector<int>::iterator pEnd = v.end();
    //第一种遍历方式
    while (pBegin != pEnd){
        cout << *pBegin <<endl;
        pBegin++;
    }
    cout << "--------------------------" << endl;
    //第二种遍历方式
    for(vector<int>::iterator it=v.begin();it !=v.end();it++){
        cout << *it << endl;
    }
    cout << "==============================" << endl;
    //第三种方式
    //使用STL提供的标准遍历算法， 头文件algorithm
    for_each(v.begin(),v.end(), myPrint);

}

int main109(){
    test1();
}